/*
 * CAppStateManager.h
 *
 *  Created on: 24/12/2012
 *      Author: Dalton
 */

#ifndef CAPPSTATEMANAGER_H_
#define CAPPSTATEMANAGER_H_

#include "CAppState.h"

enum {
    APPSTATE_NONE,
    APPSTATE_INTRO,
    APPSTATE_MENU,
    APPSTATE_CREATE,
    APPSTATE_PLAY,
    APPSTATE_GAME,
    APPSTATE_STAGE_CLIENT,
    APPSTATE_STAGE_SERVER

};

class CAppStateManager {
    private:
        static CAppState* activeAppState;

    public:
        static void onEvent(SDL_Event* event);

        static void onLoop();

        static void onRender(SDL_Surface* surf_Display);

    public:
        static void setActiveAppState(int appStateID);

        static CAppState* getActiveAppState();
};



#endif /* CAPPSTATEMANAGER_H_ */
